<html>
<head>
</head>
<body>


<h1>Introduction</h1>


  
  
<h2>Description</h2>

The program is a graph editor especially for the mathematical
field graph theory. The program is crated on request of Klas
Markstr&ouml;m at the mathematical department in Ume&aring; University
as a bachelor thesis project.
<h2>Purpose</h2>

The main purposes of the graph editor is to make it easy to edit and
create graphs that are used to illustrate theorys and ideas in the
mathematical field graph theory. Many graph editors exists but just a
few is developed with graph theory in mind and of them there are almost
none that are updated. Therefore there is a gap that this editor tries
to fill.
<h2>Main functionality and features</h2>


  The programs main functionality is to edit, save and open graphs. This is described in the help section <span style="font-style: italic;">editing graphs</span>.
Other features are for example graph operations automatic embedding
algorithms etc. The functionality is summarized in the following list:
<ul>


  <li>Editing functions for coping and paste part of the graph</li>


  <li>Editing functions for undo and redo editing commands</li>


  
  <li>View functions for zooming in and out the view of the graph and to center the current graph</li>


  <li>Selection function to select parts of the graphs depending on the current selection (e.g. select neighbors)</li>


  <li>Graph operations and other graph manipulation functions</li>


  <li>Export functions to export the graph to other graph file formats:
  
    
    <ul>


  <li>Graphviz dot-file format</li>


  <li>GraphML</li>


  <li>Graph Modeling Language (GML)</li>


  <li>File format compatible with Mathematica Combinatorica software</li>


  <li>JPEG image file format</li>


  <li>PNG image file format</li>


  <li><i>Mathematica</i> compatible file format</li>


  <li>Neighbor list</li>


  <li>EPS image file format</li>


  
    
    </ul>


  </li>


  <li>Import functions to import graphs from other file formats:
  
    
    <ul>


  <li>Random graph importer. Creates a random graph from a number of vertices and a number of edges.</li>


  <li>Mathematica compatible graph file format</li>


  
    
    </ul>


  </li>


  
</ul>


  
  



  
<h1>Main window and toolbars</h1>
  
	
<p>
	<img src="toolbars.png" border="0" height="64" width="364"><br>

	<img src="mainwindow.png" border="0" height="289" width="487"><br>

  	The main window has four main components that are marked in the picture above. They are described in the list bellow:</p>

<ul>

   <li>The <b>graph window</b> is the place where graphs are edited and displayed. How editing is performed is described in more detail in the section called <i>editing graphs</i>.</li>

   <li>The <b>menus</b> are a number of menus to choose operations from. They are described in more detail in the section called <i>Menus and there operations.</i></li>

   <li>The <b>toolbars</b> are used to fast access operations that are also in the menus. You can choose to hide the toolbars by using the <i>show toolbars</i> menu that is under the <span style="font-style: italic;">properties</span> menu. The descriptions bellow correspond to the toolbar with the same number in the picture of the toolbars above.
   
    <ol>

   <li>The file toolbar is used for some basic file operations. There
are buttons on it to create a new graph, save the current graph and to
open a graph from a file.</li>

   <li>The edit toolbar is used for some basic edit operations that
also exists under the edit menu. The edit commands in the toolbar is
for undo, redo, copy, cut and paste.</li>

   <li>In the view toolbar you can zoom in/out and set the zoom-level to the default.</li>

 
    </ol>
  </li>

   <li>The <b>statusbar</b> is used to give varying information to the
user. As default the number of vertices and edges and selected vertices
and edges in the graph are displayed. The status bar is also used to
give hints to the user of how to interact with the program. In the
picture above the status bar contains a hint to the user during a graph
operation that requires several interaction steps.</li>

</ul>

  
  

</body>
</html>
